This invention relates generally to a method and apparatus for data transfer using FSK signals and in particular to peer to peer data communication using pre-existing caller ID CLASS FSK signaling infrastructure.
Introduction of SS7 switching in central office switching systems provided the technological capability to introduce caller ID services to customers. Caller ID services utilize the ability of a modern call switching and routing system, referred to in the telecommunications industry as a Stored Program Control System (SPCS), to record and provide to a call recipient information regarding the calling party in a Calling Party Number Message (CPN Message). This information, commonly referred to as caller ID information, may comprise the calling party""s telephone number or name.
Telephones capable of displaying caller ID information are increasingly common. In fact, caller ID services are one of a group of network-provided enhanced services known as custom local area signaling services (CLASS). Telecordia Technologies, Inc., Morristown, N.J., originally Bellcore, has defined three classes of caller ID services, known respectively as Type I, Type II, and Type III. In the Type I service, a phone is equipped with a Frequency Shift Key (FSK) detector, a controller, and a display. When a call is placed to the phone, a SPCS server situated within the Public Switched Telephone Network (PSTN) activates a corresponding FSK generator also situated within the PSTN to transmit to the phone a FSK signal encoding the caller ID information. At the phone, as indicated in FIG. 1, when a first ring is detected, step 100, the controller enables the FSK detector, step 102, which listens for a FSK signal. If a FSK signal is detected before the second ring, the Yes branch of decision point 104, it is demodulated to obtain the caller ID information. That information is then displayed, step 106. If, however, the FSK signal is not detected before the second ring, the No branch of decision point 104, the FSK detector is disabled, step 110.
In the Type II or Type III service, a phone is also equipped with a Customer Premises Equipment Alerting Signal (CAS) detector. When a call is placed to the phone, as illustrated in FIG. 5, the SPCS server first determines if the phone is on-hook or off-hook. If on-hook, the procedure described for the Type I category of service is followed. If off-hook, step 250, a call waiting/caller ID service is provided in which the server first activates a corresponding CAS generator situated within the PSTN to generate and transmit a CAS signal to the phone, step 252. The CAS detector at the phone, which has been previously enabled by the controller upon the occurrence of the off-hook condition, listens for the CAS signal, indicated by the No loopback to the beginning of decision point 254. Upon detecting the CAS signal, indicated by the Yes branch of decision point 254, the controller mutes the audio channel at the phone, step 256, and sends a Dual Tone Multi-Frequency (DTMF) tone, which serves as an acknowledgement signal. In the case of a Type II unit, the acknowledgement signal is a DTMF xe2x80x98Dxe2x80x99 tone; in the case of a Type III unit, the acknowledgement signal is a DTMF xe2x80x98Axe2x80x99 tone. Muting of the audio channel is required since the FSK signal in one implementation is transmitted at a range of frequencies, 500-2500 Hz, which is within the audio band of 0 to about 3000 Hz.
The controller then enables the FSK detector, step 258, which listens for an FSK signal. If a FSK signal is detected before a predetermined timeout period, indicated by the Yes branch of decision point 260, the FSK signal is demodulated and the caller ID information obtained and displayed, step 262. If there is a timeout before the FSK signal is detected, indicated by the No branch of decision point 260, the controller un-mutes the audio channel, step 264, and resumes listening for a CAS signal, indicated by the branch from block 264 to the beginning of decision point 254.
As indicated, the process for the Type III service is identical to that of the Type II category, except that the acknowledgement signal is a DTMF xe2x80x98Axe2x80x99 tone. This identifies the Customer Premises Equipment (CPE), that is, the phone, as a Type III unit.
An Analog Display Services Interface (ADSI) is a Telecordia-defined interface and related protocol for bidirectional transmission of data between a SPCS server and an ADSI-compatible phone. The interface is such that an ADSI-compatible phone is backward compatible with a Type III phone. Data transmission to the phone is achieved via the FSK receiver already present in the phone. In early embodiments, data transmission from the phone was achieved by DTMF tones. In later embodiments, a FSK generator was added to a Type III phone, and data transmission from the phone originated from the FSK generator.
The class of services which can be supported through the ADSI is limited to those services which involve communication between a SPCS server and an ADSI-compatible phone, such as the transmission or reception of e-mail messages. However, services involving peer-to-peer communication, that is, direct communication between two CPEs, is not supported by the ADSI even though such services are desirable and unmet by the services supported by the ADSI interface.
Furthermore, it would be desirable to offer such services using the existing infrastructure for caller ID and ADSI services to the extent possible.
Therefore, a need exists for a data communication mechanism that allows peer-to-peer transmission of data over a telecommunications network using the existing infrastructure for CLASS Caller ID FSK signals.
In accordance with the purpose of the invention as broadly described herein, there is provided a method and apparatus for transmitting data between peer CPEs over a telecommunications network using the Caller ID CLASS FSK signaling infrastructure. In one implementation, the telecommunications network is a telephone network such as the PSTN.
In one embodiment, a CPE is a device known as a dataphone. In one implementation, the dataphone is an ADSI-compatible telephone to which is added a CAS generator. In another implementation, the dataphone is a Type II or Type III phone to which is added an FSK generator and a CAS generator.
However derived, the dataphone includes a CAS detector, an FSK receiver, a CAS transmitter, an FSK transmitter, a controller, and a display configured to provide peer-to-peer data communication functionality. In one implementation, these components are also configured to provide ADSI-compatible functionality. In a second implementation, these components are also configured to provide Type II or Type III caller ID functionality. In one implementation, the dataphone further includes a CODEC, a user interface such as a keypad, and a storage device, such as computer memory accessible by the controller.
The CAS generator is configured to generate a CAS signal upon being enabled by the controller. The CAS detector is configured to detect an incoming CAS signal from a calling dataphone upon being enabled by the controller. The FSK generator, upon being enabled by the controller, is configured to transmit to a target dataphone information in the form of FSK signals. The FSK receiver, upon being enabled by the controller, is configured to receive incoming FSK signals from a calling dataphone, and demodulate the same to provide the underlying information.
A peer-to-peer data communication proceeds as follows, it being assumed that a call has previously been made by the calling dataphone to a target dataphone, and a circuit established between the two over the telecommunications network (which in one implementation is the PSTN) upon the target phone being place in an off-hook condition. Accordingly, it is further assumed that the CAS detector of the target dataphone has been enabled in accordance with Type II or Type III functionality.
First, a CAS signal is generated by the CAS generator in the calling dataphone and directed to the target dataphone over the link which has previously been established between the two. Second, the CAS signal is detected by the CAS detector in the target dataphone, and an acknowledgement signal sent back to the calling dataphone acknowledging receipt of the CAS signal. The CAS signal alerts the target dataphone that a data transmission is about to occur. Third, upon receipt of the acknowledgment, the information to be transmitted is encoded into an FSK format by the FSK generator in the calling dataphone, and transmitted to the target dataphone over the link which has been previously established. In one implementation, consistent with the Type II, Type III, and ADSI-compatible protocols, transmission between the two units occurs at frequencies within the voice band. In one implementation example, these frequencies range from 500-2500 Hz. In another implementation, these frequencies range from 1000-2200 Hz.
In one implementation, a message type byte is included in the information stream identifying the stream as originating from a calling dataphone in contrast to an SPCS server as per the standard ADSI protocol. This is consistent with the ADSI protocol, which permits manufacturer-specific message types.
Fifth, the FSK signals are received and demodulated by the target dataphone, thus establishing the link between the calling and target dataphones. Moreover, the message type byte is detected, thus signaling the target dataphone that the information has originated from a calling dataphone rather than a SPCS server. At this point, the protocol for exchanging information may deviate from that specified by the ADSI protocol.
In one mode of operation, referred to as the simplex mode of operation, data transmission occurs one way from the calling dataphone to the target dataphone. In this mode of operation, the calling dataphone may continue to transmit data to the target dataphone in accordance with a protocol understood by both parties. In this mode of operation, when the calling dataphone has completed data transfer, the FSK link is broken, and the call between the two dataphones over the telecommunications network is terminated.
In a second mode of operation, referred to as a half duplex mode of operation, data transmission from the calling dataphone to the target dataphone occurs as in the simplex mode of operation, but, after this is completed, the calling dataphone enables its FSK receiver, and the target dataphone then begins transmitting data to the calling dataphone. The two can then alternate data transmission to one another indefinitely, until either unit breaks the link, thus terminating the call.
In a third mode of operation, full duplex transmission occurs.
In a second embodiment, data transmission between the two units occurs independent of the telecommunication network, and over an acoustical channel. In this embodiment, consistent with the Type II, Type III, and ADSI-compatible protocols, information is transmitted between the two units at frequencies within the voice band. In one implementation, these frequencies range from 500-2500 Hz. In another implementation, they range from 1000-2200 Hz. The acoustical channel comprises the speaker/earpiece of the originating dataphone, and extends through the air to the microphone of the destination dataphone. The information is converted to FSK signals by the FSK generator of the originating dataphone. It is then converted to an acoustic signal by the speaker/earpiece of the originating dataphone, and transmitted over the air. The acoustic signal is received by the microphone of the destination dataphone, which converts it back into electrical FSK signals. These electrical signals are then processed as in the first embodiment. Compared to the first embodiment, the two dataphones do not need to be in an off-hook condition to establish the link, although the speaker/earpiece of the originating dataphone and the microphone of the destination dataphone do generally need to be in a line-of-sight relationship.
In a third embodiment, a CPE is any device which is capable of placing calls to other similarly disposed units over a telecommunication network such as the PSTN, which further has a CAS generator and detector, and a FSK generator/detector, and which is configured to communicate FSK-encoded data over a pre-established link with a similarly disposed device. Such devices may include laptops, desk top computers, and palm pilots.
In a fourth embodiment, the calling and target CPEs are each a wireless communication device, such as a mobile handset, which further has a CAS generator and detector, and a FSK generator and detector, and which is configured to communicate FSK-encoded data over a predefined wireless link with a similarly disposed device.
In a fifth embodiment, data stored in a target CPE is remotely accessed by an initiating CPE. In one implementation, the target CPE is a user""s home dataphone and the initiating CPE is the user""s remote dataphone. The data stored in the target CPE may include caller ID logs, contact lists, email messages and other types of data. The stored data is FSK-encoded by the target CPE and transmitted to the initiating CPE for display and/or storage.
In a sixth embodiment, a user""s home or xe2x80x9cfieldxe2x80x9d CPE is remotely tested by a technical support center or entity or xe2x80x9csupport CPExe2x80x9d. The support CPE FSK-encodes a message to the field CPE instructing it to enter a self-test mode. The field CPE executes the self-test and FSK-encodes and transmits the results to the support CPE.
In a seventh embodiment, a cordless CPE is in RF communication with a network of RF units that control the active states of home appliances and utilities. A remote CPE, typically a user""s cordless dataphone, FSK-encodes and transmits a message to the cordless CPE instructing it to issue an RF command to the network of RF units. The cordless CPE receives the FSK-encoded message and issues an appropriate command via its RF transceiver to one or more of the RF units. In a xe2x80x9ctwo-wayxe2x80x9d mode of operation, the RF units include an RF transmitter for communicating the results or status to the cordless CPE, and the cordless CPE FSK-encodes and transmits a message containing the results or status to the remote CPE.
In an eighth embodiment, a user CPE is remotely configured or upgraded by a control CPE. In one implementation example, the control CPE is a home-based PC and the user CPE is a dataphone having an associated software interface which is loaded into the PC. The software interface prompts the user to select operating options or configurations, and once complete, the control CPE initiates transmission of the configuration data to the user CPE by sending a CAS to the user CPE. Hence, the user may purchase a dataphone and, using the provided software package, program or configure the phone to her tastes. In another implementation, the control CPE is a manufacturer-based computer or controller. Hence, the user may purchase additional options or request an upgrade from the manufacturer, the user phone may have built-in features that must be enabled by the manufacturer, or the control CPE might be a central database containing telephone profiles that can be transferred to individual phones (user CPEs) to personalize the phones to specific needs or desires.
Objects and advantages of the present invention include any of the foregoing, singly or in combination. Further objects and advantages will be apparent to those of ordinary skill in the art, or will be set forth in the following disclosure.